02. Getting Started

Getting Started

Getting Started

In the course “Intro to Backend,” we walk you through the development of a blog application using Google App Engine. But the course excludes certain features that you’ll need to implement for this project.

This document is intended to guide you through implementing the entire project, including what has been taught in the course. Note that some details are omitted from this document, so refer to the rubric for details. If you’ve already completed the project from the course, go to step 5.

Note: Google App Engine has changed a lot recently! Fortunately their documentation is very good. If you encounter error messages while deploying your project, check out the documentation or ask on the Udacity discussion forums!

Let’s Get Started

Setup

Step 1: Create a Basic Blog

Step 2: Add User Registration

  • Have a registration form that validates user input, and displays the error(s) when necessary.
  • After a successful registration, a user is directed to a welcome page with a greeting, “Welcome, [User]” where [User] is a name set in a cookie.
    • If a user attempts to visit the welcome page without being signed in (without having a cookie), then redirect to the Signup page.
  • Watch the demo for more details.
  • Be sure to store passwords securely.

Step 3: Add Login

  • Have a login form that validates user input, and displays the error(s) when necessary.
  • After a successful login, the user is directed to the same welcome page from Step 2.
  • Watch the demo for more details.

Step 4: Add Logout

  • Have a logout form that validates user input, and displays the error(s) when necessary.
  • After logging out, the cookie is cleared and user is redirected to the Signup page from Step 2.
  • Watch the demo for more details.

Step 5: Add Other Features on Your Own

  • Users should only be able to edit/delete their posts. They receive an error message if they disobey this rule.
  • Users can like/unlike posts, but not their own. They receive an error message if they disobey this rule.
  • Users can comment on posts. They can only edit/delete their own posts, and they should receive an error message if they disobey this rule.

Step 6: Final Touches

  • Create a README.md file explaining how to run your code.
  • Refactor your code so it is well structured, well commented, and conforms to the Python Style Guide.
  • Make sure your project conforms to the rubric.
  • Deploy your app to appspot.com using gcloud app deploy.
  • Submit your project.
  • Revise your project and resubmit as necessary.
  • Pat yourself on the back!